package pe.edu.upc.e41a.javasoft.service;

import java.util.List;

import javax.persistence.TypedQuery;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import pe.edu.upc.e41a.javasoft.domain.Publicacion;
import pe.edu.upc.e41a.javasoft.domain.Transaccion;

@Service
@Transactional
public class PortadaServiceImpl implements PortadaService {

	public List<Publicacion> listarPublicacionMasVisitadas() {
		List<Publicacion> mListPublicaciones;
		mListPublicaciones = Publicacion.listarPublicacionMasVisitadas();
		
		return mListPublicaciones;	
	}

	public List<Publicacion> listarPublicacionMasVendidas() {
		List<Publicacion> mListPublicaciones;
		mListPublicaciones = Publicacion.listarPublicacionMasVendidas();
		
		return mListPublicaciones;	
	}
	
	public List<Publicacion> listarPublicacionUltimas() {
		List<Publicacion> mListPublicaciones;
		mListPublicaciones = Publicacion.listarPublicacionUltimas();
		
		return mListPublicaciones;	
	}	

	public List<Publicacion> listarPublicacionTop() {
		TypedQuery<Publicacion> publicacionResultado=Publicacion.findPublicacionsByTransaccions(Transaccion.findAllTransaccions());
		return publicacionResultado.getResultList();

	}

}